package com.zhouyu.springboot;

import org.springframework.context.annotation.Conditional;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @Conditional来源于spring-context包下的一个注解。Conditional中文是条件的意思，
 * @Conditional注解它的作用是按照一定的条件进行判断，满足条件给容器注册bean。
 */
@Target({ ElementType.TYPE, ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
@Conditional(ZhouyuOnClassCondition.class)
public @interface ZhouyuConditionalOnClass {

    String value() default "";
}
